package org.hl7.datatypes.r2.basic;

import javax.persistence.Embeddable;
import javax.persistence.MappedSuperclass;
import org.hl7.datatypes.r2.flavors.cd.CV;
import org.hl7.datatypes.r2.flavors.st.ST_NT;
import org.hl7.datatypes.r2.flavors.st.ST_SIMPLE;

@Embeddable
@MappedSuperclass
public class CS extends CV {
    
//    @Embedded
//    @AttributeOverride(name = "stValue", column =
//            @Column(name = "CODE"))
//    private ST_SIMPLE code;
//    @Embedded
//    @AttributeOverride(name = "stValue", column =
//            @Column(name = "CODE_SYSTEM"))
//    private UID codeSystem;
//    @Embedded
//    @AttributeOverride(name = "stValue", column =
//            @Column(name = "CODE_SYSTEM_NAME"))
//    private ST_NT codeSystemName;
//    @Embedded
//    @AttributeOverride(name = "stValue", column =
//            @Column(name = "CODE_SYSTEM_VERSION"))
//    private ST_SIMPLE codeSystemVersion;

    public CS() {
    }

    public ST_SIMPLE literal() {
        return null;
    }
    
    public CS(ST_SIMPLE code, UID codeSystem, ST_NT codeSystemName, ST_SIMPLE codeSystemVersion) {
        setCode(code);
        setCodeSystem(codeSystem);
        setCodeSystemName(codeSystemName);
        setCodeSystemVersion(codeSystemVersion);
    }
}
